package com.decent.ejfadmin.user.controller;


import com.decent.ejfadmin.common.bean.MessageBean;
import com.decent.ejfadmin.common.bean.Page;
import com.decent.ejfadmin.user.service.UserPmService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.ArrayList;

/**
 * 会员专属管理员
 *
 * @author weicx
 * @date 2018/08/15
 */
@RestController
@Slf4j
@RequestMapping("/UserPmController")
public class UserPmController {
    @Autowired
    private UserPmService userPmService;

    /**
     * 查询专属商务
     *
     * @param adminName 查询商务，可空
     * @param page      分页
     * @return MemberMessage
     */
    @RequestMapping("/queryUserPm")
    public Page queryUserPm(Page page, String adminName) {
        try {
            return userPmService.queryUserPm(page, adminName);
        } catch (Exception e) {
            log.warn("查询专属商务异常: [{}]", e);
            page.setResultList(new ArrayList<>());
            page.setTotal(0);
            return page;
        }
    }

    /**
     * 修改专属商务
     *
     * @param id        专属id，可空
     * @param status    操作，0新增，1修改
     * @param adminName 商务名称，可空
     * @param qq        联系qq，可空
     * @param tel       联系电话，可空
     * @return 成功“OK”
     */
    @RequestMapping("modifyUserPm")
    public MessageBean modifyUserPm(Integer id, Integer status, String adminName, String qq, String tel) {
        try {
            if (status == null) {
                return MessageBean.fail("请选择操作类型");
            }
            if (StringUtils.isBlank(adminName)) {
                return MessageBean.fail("请输入管理员名称");
            }
            if (StringUtils.isBlank(qq)) {
                return MessageBean.fail("请输入联系QQ");
            }
            if (StringUtils.isBlank(tel)) {
                return MessageBean.fail("请输入联系电话");
            }
            return userPmService.modifyUserPm(id, status, adminName, qq, tel);
        } catch (Exception e) {
            log.warn("[{}] 修改专属商务异常: [{}]", adminName, e);
            return MessageBean.fail();
        }
    }
    /**
     * 删除专属商务
     *
     * @param id        专属id，可空
     * @return 成功“OK”
     */
    @RequestMapping("deleteUserPm")
    public MessageBean deleteUserPm(Integer id) {
        try {
            if (id == null) {
                return MessageBean.fail("请选择管理员");
            }
            return userPmService.deleteUserPm(id);
        } catch (Exception e) {
            log.warn("[{}] 删除专属商务异常: [{}]", id, e);
            return MessageBean.fail();
        }
    }


}
